/*
 * FSWUniCEUB - 2008
 * 
 * Este arquivo é de propriedade da Fábrica de Software do UniCEUB
 * 
 * Para mais informações entre em contato com a coordenação do
 * curso de Ciência da Computação da instituição.
 */

package br.uniceub.fsw.indicadores.vo;

import br.uniceub.fsw.indicadores.dao.DadoPrimarioDAO;
import br.uniceub.fsw.indicadores.dao.ValorIndicadorDAO;

/**
 * Value Object da entidade Valor Dado Primario do módulo de Indicadores.
 * 
 * Tabela: TB_ValorDadoPrimario
 *
 * @author Filipe Scafuto Vieira ra 20463917
 */
public class ValorDadoPrimarioVO {
    
    /**
     * Coluna: ID_ValorDadoPrimario
     */
    private Integer idValorDadoPrimario;
    
    /**
     * Coluna: VL_ValorDadoPrimario
     */
    private Float vlValorDadoPrimario;
    
    /**
     * Tabela referenciada: TB_DadoPrimario
     * Coluna FK: CD_DadoPrimario
     */
    private Integer cdDadoPrimario;
    
    /**
     * DadoPrimario relacionado pela coluna cdDadoPrimario.
     */
    private DadoPrimarioVO dadoPrimario;

    /**
     * Tabela referenciada: TB_ValorIndicador
     * Coluna FK: CD_ValorIndicador
     */
    private Integer cdValorIndicador;
    
    /**
     * ValorIndicador relacionado pela coluna cdValorIndicador.
     */
    private ValorIndicadorVO valorIndicador;

    /*
     * Getters e Setters.
     */    

    public Integer getIdValorDadoPrimario() {
        return idValorDadoPrimario;
    }

    public void setIdValorDadoPrimario(Integer idValorDadoPrimario) {
        this.idValorDadoPrimario = idValorDadoPrimario;
    }

    public Float getVlValorDadoPrimario() {
        return vlValorDadoPrimario;
    }

    public void setVlValorDadoPrimario(Float vlValorDadoPrimario) {
        this.vlValorDadoPrimario = vlValorDadoPrimario;
    }

    public Integer getCdDadoPrimario() {
        return cdDadoPrimario;
    }

    public void setCdDadoPrimario(Integer cdDadoPrimario) {
        this.cdDadoPrimario = cdDadoPrimario;
    }

    
    public void setDadoPrimario(DadoPrimarioVO dadoPrimario) {
        this.dadoPrimario = dadoPrimario;
    }
    
    public DadoPrimarioVO getDadoPrimario() {
        
        if(this.dadoPrimario == null) {
            this.dadoPrimario = new DadoPrimarioDAO().consultarPorId(this.cdDadoPrimario);
        }
        
        return dadoPrimario;
    }    

    public Integer getCdValorIndicador() {
        return cdValorIndicador;
    }

    public void setCdValorIndicador(Integer cdValorIndicador) {
        this.cdValorIndicador = cdValorIndicador;
    }

    
    public void setValorIndicador(ValorIndicadorVO valorIndicador) {
        this.valorIndicador = valorIndicador;
    }
    
    public ValorIndicadorVO getValorIndicador() {
        
        if(this.valorIndicador == null) {
            this.valorIndicador = new ValorIndicadorDAO().consultarPorId(this.cdValorIndicador);
        }
        
        return valorIndicador;
    }    

}
